Operational Amplifiers (opamps) are a basic building block for analog circuits and are used extensively in a wide variety of applications. However, the usefulness of the typical opamp is restricted by its "non-ideal" characteristics. For example, the common-mode input range for a typical opamp is limited to the rail to rail voltage minus 1 or more volts. Moreover, a typical opamp can maintain neither a rail-to-rail output range nor an accurate output voltage under heavy DC loads.